Enterprise Version
a little tired but happy